import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.15
import QtQuick.Window 2.15
import FluentUI 1.0
import GlobalConsts 1.0

FluWindow {
    id: aboutDialog
    title: "关于..."
    width: 640
    height: 480
    fixSize: true
    launchMode: FluWindowType.SingleTask
    modality: Qt.ApplicationModal
    showMinimize: false
    showMaximize: false
    // 动态计算 flags
    flags: {
        if (Qt.platform.os === "windows") {
            // Windows 系统：工具窗口
            return Qt.Tool
        } else if (Qt.platform.os === "osx") {
            // macOS 系统：工具窗口 + 始终置顶
            return Qt.Tool | Qt.WindowStaysOnTopHint
        } else {
            // Linux/其他系统：仅工具窗口
            return Qt.Tool
        }
    }

    Image {
        anchors.fill: parent
        source: "qrc:/res/image/about_1.jpg"
        asynchronous: true
        fillMode: Image.PreserveAspectCrop
    }

    // 主布局容器（填满窗口）
    ColumnLayout {
        anchors.fill: parent
        spacing: 20 // 取消组件间距

        // ===== 顶部标题栏 =====
        RowLayout {
            Layout.fillWidth: true
            Layout.leftMargin: 20
            Layout.topMargin: 20

            // 左上角标题
            Text {
                text: SysConstants.company
                font {
                    pixelSize: 18
                    bold: true
                }
                color: "white"
            }

            // 右侧占位空间（保持标题左对齐）
            Item {
                Layout.fillWidth: true
            }
        }

        // ===== 中间主标题 =====
        Item {
            Layout.fillWidth: true
            Layout.fillHeight: true // 占据剩余空间

            Text {
                text: SysConstants.displayName
                anchors.centerIn: parent
                font {
                    pixelSize: 48
                    weight: Font.Bold
                }
                color: "white"
            }
        }

        // ===== 底部区域 =====
        ColumnLayout {
            Layout.fillWidth: true
            Layout.bottomMargin: 20 // 整体底部边距
            spacing: 10

            // 版本信息（右下角）
            RowLayout {
                Layout.fillWidth: true

                // 左侧占位
                Item {
                    Layout.fillWidth: true
                }

                Text {
                    text: SysConstants.sysDescription
                    font.pixelSize: 14
                    font.bold: true
                    color: "white"
                    Layout.rightMargin: 20 // 右侧边距
                }
            }
            RowLayout {
                Layout.fillWidth: true

                // 左侧占位
                Item {
                    Layout.fillWidth: true
                }

                // 关闭按钮（水平居中+底部边距）
                FluButton {
                    text: "关闭"
                    Layout.alignment: Qt.AlignHCenter
                    // Layout.bottomMargin: 10 // 按钮底部边距
                    Layout.rightMargin: 30 // 右侧边距
                    Layout.preferredWidth: 90
                    contentItem: Text {
                        text: parent.text
                        horizontalAlignment: Text.AlignHCenter
                        verticalAlignment: Text.AlignVCenter
                    }

                    // 点击事件
                    onClicked: close()
                }
            }
        }
    }
}
